home *** CD-ROM | disk | FTP | other *** search
/ Scene Storm / Scene Storm - Volume 1.iso / coding / c / unixdirsii / unixdirsii.doc < prev    next >
Text File  |  1995-11-05  |  3KB  |  87 lines

  1. short: patch DOS to use . and .. ala UNIX
  2.  
  3. UnixDirsII Version 1.0, by Martin W. Scott
  4. ------------------------------------------
  5. PUBLIC DOMAIN, NO WARRANTIES ATTACHED
  6. REQUIRES KickStart 2.04 OR HIGHER (SO FAR, UNTESTED ON KS 3.0)
  7.  
  8. Sick and tired of typing '..' when you should have typed '/'? Hate having
  9. to switch to Amiga path specifications? Then UnixDirsII is for you.
  10. UnixDirsII was written because the original UnixDirs (by Murray Bennett and
  11. Mark Cyster) broke under 2.0. This version has absolutely nothing to do
  12. with the original, except that it provides the same function. 
  13.  
  14. The Unix path convention isn't necessarily better than the Amiga's, in fact
  15. there's not much between them, but I'm sure I'm not alone in always
  16. mistakenly using Unix paths when I'm using my Amiga. If you don't use Unix,
  17. you can safely ignore this program.
  18.  
  19. UnixDirsII adjusts paths passed to certain DOS functions in the following
  20. way:
  21.  
  22.     - a leading '.' means the calling task's current directory
  23.     - '..' and '../' mean '/' (back up a level)
  24.  
  25. Note that '.' only has special significance at the start of a
  26. path-sprcification. I have opted not to incorporate handling of a leading
  27. '/' to mean ROOT, as this may lead to ambiguities and conflicts in programs
  28. that do their own path manipulation.
  29.  
  30. It's best started from WBStartup, unless you want to use Unix paths in your
  31. Startup-sequence or user-startup, in which case you should 'run >nil:
  32. UnixDirsII' before you use the new paths. In most cases, this wont be
  33. necessary. When starting UnixDirsII from Workbench, it'll use about 8K.
  34. Calling UnixDirsII again will remove it, but not all memory will be freed
  35. (to avoid SetFunction conflicts). However, restarting UnixDirsII won't use
  36. up any more memory, it reuses what it left before. 
  37.  
  38. You can disable and re-enable UnixDirsII from the Commodities Exchange in
  39. the obvious way. This may be useful if a particular program experiences
  40. problems whilst UnixDirsII is running.
  41.  
  42.  
  43. Notes/Problems/Oversights
  44. -------------------------
  45. System routines that are patched:
  46.  
  47.     AssignLate, AssignPath, CreateDir, DeleteFile
  48.     LoadSeg, Lock, MatchFirst, NewLoadSeg, Open
  49.     ParsePattern, Rename, SetComment, SetFileDate
  50.     SetFileSize, SetProtection
  51.  
  52. Things that aren't patched that maybe ought to be:
  53.  
  54.     ExAll with pattern (DOS seems to use an internal ParsePattern)
  55.     Notify routines - not really necessary to patch?
  56.  
  57. I haven't as yet experienced any problems on these fronts.
  58. Programs that use their own routines to manipulate paths may have problems.
  59. Lha is one such program. I've tried to fix it, thus far without success, so
  60. don't use . and .. in path specifications.
  61.  
  62.  
  63. Distribution
  64. ------------
  65. UnixDirsII is placed in the public domain, which means people can modify
  66. and redistribute it as they like (hopefully improved versions). I would ask
  67. that if you distribute a modified version, make sure it is clear in the
  68. docs that you are the person to come running to for help/flames etc.
  69.  
  70. UnixDirsII comes with no warranties. Use it entirely at your own risk.
  71.  
  72.  
  73. Finally
  74. -------
  75. UnixDirsII was written entirely in C (yes, these things can be done in C),
  76. compiled with SAS/C v5.10. The routines are patched in a method based on
  77. that in ISpy, a CBM-provided AmigaMail example. 
  78.  
  79. Contact:
  80.  
  81.     Martin W. Scott
  82.     23 Drum Brae North
  83.     Edinburgh  EH4 8AT
  84.     United Kingdom.
  85.  
  86. or email: mws@castle.ed.ac.uk
  87.